package com.ruoyi.student_club.service;

import java.util.List;

import com.github.pagehelper.PageInfo;
import com.ruoyi.student_club.domain.ClubActivity;
import com.ruoyi.student_club.dto.ActivityDto;
import com.ruoyi.student_club.vo.app.ActivityDetail;
import com.ruoyi.student_club.vo.app.ClubActivityVo;
import com.ruoyi.student_club.vo.app.ClubListVo;

/**
 * 活动管理Service接口
 * 
 * @author 无尤
 * @date 2022-01-24
 */
public interface IClubActivityService 
{
    /**
     * 查询活动管理
     * 
     * @param id 活动管理主键
     * @return 活动管理
     */
    public ClubActivity selectClubActivityById(Long id);

    /**
     * 查询活动管理列表
     * 
     * @param clubActivity 活动管理
     * @return 活动管理集合
     */
    public List<ClubActivity> selectClubActivityList(ClubActivity clubActivity);

    /**
     * 新增活动管理
     * 
     * @param clubActivity 活动管理
     * @return 结果
     */
    public int insertClubActivity(ClubActivity clubActivity);

    /**
     * 修改活动管理
     * 
     * @param clubActivity 活动管理
     * @return 结果
     */
    public int updateClubActivity(ClubActivity clubActivity);

    /**
     * 批量删除活动管理
     * 
     * @param ids 需要删除的活动管理主键集合
     * @return 结果
     */
    public int deleteClubActivityByIds(String ids);

    /**
     * 删除活动管理信息
     * 
     * @param id 活动管理主键
     * @return 结果
     */
    public int deleteClubActivityById(Long id);

    /**
     * 获取社团活动列表
     * @param clubId 社团id
     * @return
     */
    List<ClubActivityVo> getClubActivityList(Long clubId);

    /**
     * 获取社团活动详情
     * @param id 活动id
     * @return
     */
    ClubActivity getActivityDetail(Long id);

    /**
     * 获取活动列表
     * @param dto 参数
     * @return
     */
    PageInfo getActivityList(ActivityDto dto);

    /**
     * 获取活动详情（app）
     * @param id 活动id
     * @return
     */
    ActivityDetail activityDetail(Long id);

}
